---
title: Getting Started
description: Everything you need to start building with Bloc.
---

import InstallationTabs from '~/components/getting-started/InstallationTabs.astro';
import ImportTabs from '~/components/getting-started/ImportTabs.astro';

## Packages

The bloc ecosystem consists of multiple packages listed below:

| Package                                                                                    | Description                 | Link                                                                                                           |
| ------------------------------------------------------------------------------------------ | --------------------------- | -------------------------------------------------------------------------------------------------------------- |
| [angular_bloc](https://github.com/felangel/bloc/tree/master/packages/angular_bloc)         | AngularDart Components      | [![pub package](https://img.shields.io/pub/v/angular_bloc.svg)](https://pub.dev/packages/angular_bloc)         |
| [bloc](https://github.com/felangel/bloc/tree/master/packages/bloc)                         | Core Dart APIs              | [![pub package](https://img.shields.io/pub/v/bloc.svg)](https://pub.dev/packages/bloc)                         |
| [bloc_concurrency](https://github.com/felangel/bloc/tree/master/packages/bloc_concurrency) | Event Transformers          | [![pub package](https://img.shields.io/pub/v/bloc_concurrency.svg)](https://pub.dev/packages/bloc_concurrency) |
| [bloc_lint](https://github.com/felangel/bloc/tree/master/packages/bloc_lint)               | Custom Linter               | [![pub package](https://img.shields.io/pub/v/bloc_lint.svg)](https://pub.dev/packages/bloc_lint)               |
| [bloc_test](https://github.com/felangel/bloc/tree/master/packages/bloc_test)               | Testing APIs                | [![pub package](https://img.shields.io/pub/v/bloc_test.svg)](https://pub.dev/packages/bloc_test)               |
| [bloc_tools](https://github.com/felangel/bloc/tree/master/packages/bloc_tools)             | Command-line Tools          | [![pub package](https://img.shields.io/pub/v/bloc_tools.svg)](https://pub.dev/packages/bloc_tools)             |
| [flutter_bloc](https://github.com/felangel/bloc/tree/master/packages/flutter_bloc)         | Flutter Widgets             | [![pub package](https://img.shields.io/pub/v/flutter_bloc.svg)](https://pub.dev/packages/flutter_bloc)         |
| [hydrated_bloc](https://github.com/felangel/bloc/tree/master/packages/hydrated_bloc)       | Caching/Persistence Support | [![pub package](https://img.shields.io/pub/v/hydrated_bloc.svg)](https://pub.dev/packages/hydrated_bloc)       |
| [replay_bloc](https://github.com/felangel/bloc/tree/master/packages/replay_bloc)           | Undo/Redo Support           | [![pub package](https://img.shields.io/pub/v/replay_bloc.svg)](https://pub.dev/packages/replay_bloc)           |

## Installation

<InstallationTabs />

:::note

In order to start using bloc you must have the
[Dart SDK](https://dart.dev/get-dart) installed on your machine.

:::

## Imports

Now that we have successfully installed bloc, we can create our `main.dart` and
import the respective `bloc` package.

<ImportTabs />
